package top.zuli.package01.class15;

import org.junit.Test;

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;

public class TestDemo4 {
    @Test
    public void CalendarTest(){
        //获取实例对象：静态方法，推荐
        Calendar calendar = Calendar.getInstance();
        System.out.println(calendar);
        //向上转型
        Calendar calendar1 = new GregorianCalendar();
        System.out.println(calendar);
    }
    @Test
    public void CalendarTest2(){
        //1.创建对象
        Calendar calendar = Calendar.getInstance();
        //2.set方法设置日历信息 以 年月日时分秒
        //设置年
        calendar.set(Calendar.YEAR,2019);
        //日历用0-11 表示  1-12月
        calendar.set(Calendar.MONTH,1);
        //设置日 一月中的天数
        calendar.set(Calendar.DAY_OF_MONTH,8);
        //设置一天中的小时数
        calendar.set(Calendar.HOUR_OF_DAY,15);
        //设置一小时的分钟数
        calendar.set(Calendar.MINUTE,20);
        //设置一分钟的秒数
        calendar.set(Calendar.SECOND,58);
        calendar.set(2018,1,2);
        calendar.set(2017,1,2,22,20,20);

        //3.get方法获取日历信息
        System.out.println(calendar.get(Calendar.YEAR));
        //日历用0-11 表示  1-12月
        System.out.println(calendar.get(Calendar.MONTH));
        System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
        System.out.println(calendar.get(Calendar.HOUR_OF_DAY));
        System.out.println(calendar.get(Calendar.MINUTE));
        System.out.println(calendar.get(Calendar.SECOND));
        //4.将日历转为日期
        Date date = calendar.getTime();
        System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date));
        //5.将日期转为日历
        Calendar calendar1 = Calendar.getInstance();
        // 设置日历时间为标准时间过了一秒钟
        calendar1.setTime(new Date(1000L));
        // 打印日历信息
        System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(calendar1.getTime()));
    }
}
